package com.crane.oss.sys.bean.request.user;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.io.Serializable;
import java.util.List;

/**
 * @author bealon
 * @email ccsu123456@qq.com
 * @date 2018年12月28日 12时22分23秒
 */
@Getter
@Setter
@ToString
@ApiModel(description = "修改用户参数")
public class UpdateUserRequest implements Serializable {

	private static final long serialVersionUID = -7668633265485447249L;

	@ApiModelProperty(value = "用户id", name = "id")
    @NotNull(message = "用户ID不能为空")
    private Long userId;

    @ApiModelProperty(value = "真实姓名", name = "userName")
    @Size(max = 50, message = "账号长度超长")
    private String userName;

    @ApiModelProperty(value = "真实姓名", name = "realname")
    @Size(max = 50, message = "真实姓名长度超长")
    private String realName;

    @ApiModelProperty(value = "邮箱", name = "email")
    @Size(max = 100, message = "邮箱长度超长")
    private String email;

    @ApiModelProperty(value = "手机号", name = "mobile")
    @Size(max = 11, message = "手机号码长度超长")
    private String mobile;

    @ApiModelProperty(value = "图像地址", name = "headUrl")
    private String headUrl;

    @ApiModelProperty(value = "性别 0 男  1女", name = "sex")
    private Integer sex;

    @ApiModelProperty(value = "状态：0正常，1锁定，2无效", name = "status")
    private Integer status;

    @ApiModelProperty(value = "用户标签", name = "userLabel")
    private Integer userLabel;

    @ApiModelProperty(value = "角色id列表", name = "roleIdList")
    private List<Long> roleIdList;

    @ApiModelProperty(value = "修改人userId", name = "updateUserId", hidden = true)
    private Long updateUserId;

    @ApiModelProperty(value = "修改人机构Id", name = "updatePartyId", hidden = true)
    private Long updatePartyId;
}
